package com.fsm.system.service;

import com.fsm.common.log.entity.TSystemOperationLog;
import com.fsm.common.tools.Result.Result;
import com.mybatisflex.core.service.IService;
import jakarta.servlet.http.HttpServletResponse;

/**
 *  操作日志接口。
 *
 * @author 翻山鸣
 * @since 2024/04/20
 */
public interface TSystemOperationLogService extends IService<TSystemOperationLog> {

    /**
     * 分页查询操作日志
     *
     * @param tSystemOperationLog
     * @return 分页对象
     */
    Result pageTSystemOperationLog(TSystemOperationLog tSystemOperationLog) throws Exception;

    /**
     * 导出操作日志
     *
     * @param response
     * @return
     */
    Result uploadTSystemOperationLogData(TSystemOperationLog tSystemOperationLog,HttpServletResponse response) throws Exception;

    /**
     * 清除操作日志
     * 放开@Scheduled注解后，每年底除操作日志，保留近一个月数据
     *
     * @param
     * @return 分页对象
     */
    void cleanTSystemOperationLog() throws Exception;

}
